package com.ls.eightSort;

/**
 * 选择排序
 */
public class SelectSort {
    public static void main(String[] args) {
        int[] arr= {4,5,65,3,2,1,66};
        System.out.println(min(arr));
        show(arr);
        sort(arr);
        show(arr);
    }

        public static void sort(int[] arr){
            int minIndex;
            int tem;
            for (int i = 0; i < arr.length-1; i++) {
                minIndex = i;
                for (int j = i+1;j<arr.length;j++){
                   // 找到最小值的索引
                    if (arr[minIndex]>arr[j]){
                        minIndex = j;
                    }
                }
                if (minIndex!=i){
                    // 交换
                    tem = arr[i];
                    arr[i] = arr[minIndex];
                    arr[minIndex] = tem;
                }
            }
        }

    public static void show(int arr[]){
        for (int i : arr) {
            System.out.print(i+",");
        }
        System.out.println();
    }

    /**
     * 找到最小值
     */
    public static int min(int arr[]){
        // 开始假设最小值是第一个
        int min = arr[0];
        for (int i : arr) {
            if (min>i){
                // 如果后面碰到比他小的元素则交换，这是一个不断交换的过程
                min=i;
            }
        }
        return min;
    }
}
